package com.yami.shop.nft.common.model;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;

import java.util.Date;

/**
    * 品类表
    */
@Data
@TableName(value = "tz_nft_denom")
public class NftDenom {
    /**
     * id
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;

    /**
     * 店铺id
     */
    @TableField(value = "shop_id")
    private Integer shopId;

    /**
     * 链编码
     */
    @TableField(value = "blockchain_code")
    private String blockchainCode;

    /**
     * 铸币类别链上标识Id
     */
    @TableField(value = "denom_id")
    private String denomId;

    /**
     * 铸币类别名称
     */
    @TableField(value = "denom_name")
    private String denomName;

    /**
     * 铸币类别的交易哈希值
     */
    @TableField(value = "catagory_hash")
    private String catagoryHash;

    /**
     * 创建时间
     */
    @TableField(value = "create_time")
    private Date createTime;

    /**
     * 更新时间
     */
    @TableField(value = "update_time")
    private Date updateTime;

    /**
     * 创建人
     */
    @TableField(value = "creater")
    private String creater;

    /**
     * 是否绑定商品 0 否 1 是
     */
    @TableField(value = "isbind_status")
    private Integer isbindStatus;

    /**
     * 数量
     */
    @TableField(exist = false)
    private Long count;

    /**
     * 链名称
     */
    @TableField(exist = false)
    private String blockchainName;

    /**
     * 保证幂等性，避免重复请求，保证对于同一操作发起的一次请求或者多次请求的结果是一致的；由接入方生成并自行维护、针对每个 Project ID 唯一的、不超过 64 个大小写字母、数字、-、下划线的字符串
     */
    @TableField(value = "operation_id")
    private String operationId;

    //*************************************** avata 专用
    /**
     * NFT 类别权属者
     */
    @TableField(value = "owner")
    private String owner;
    /**
     * NFT 类别标识，用于快速识别和查询该类 NFT 资产
     */
    @TableField(value = "symbol")
    private String symbol;
}